Create virtual machine #1
2012/05/07 |
Install GuestOS and create Virtual Machine. This example shows to install Ubuntu 12.04.
|
|
[1] | Install on text mode via network, it's OK on Console or remote connection with Putty and so on. |
root@dlp:~# mkdir -p /var/kvm/images # create a storage pool root@dlp:~# virt-install \
Starting install...
-n www \
-r 2048 \ -f /var/kvm/images/www.img \ -s 20 \ --vcpus=2 \ --os-type linux \ --os-variant=ubuntuprecise \ --network bridge=br0 \ --nographics \ --location='http://jp.archive.ubuntu.com/ubuntu/dists/precise/main/installer-amd64/' \ --extra-args='console=tty0 console=ttyS0,115200n8 serial' # installation starts |
For options, make sure 'man virt-install', there are many options
-n specify the name of Virtual Machine-r specify the amount of memories of Virtual Machine -f specify the location of disks of Virtual Machine -s specify the amount of disks of Virtual Machine --vcpus=
specify the virtual CPUs
--os-type
specify types of GuestOS
--network=
specify network types of Virtual Machine
--nographics
nographics
--location=
specify location of installation where from
--extra-args=
specify parameters that is set in kernel
|
[2] | Install on text mode, it's the same with common procedure of installation. After finishing installation, reboot first and then login prompt is shown like follwos. |
Ubuntu 12.04 LTS temp ttyS0 www login: # login with a user set in installation |
[3] | Move to GuestOS to HostOS with Ctrl + ] key. Move to HostOS to GuestOS with a command 'virsh console (name of virtual machine)'. |
pangolin@www:~$
# push Ctrl + ] root@dlp:~# # Host's console
root@dlp:~#
pangolin@www:~$ virsh console www # move to Guest Connected to domain www Escape character is ^] # Enter key # Guest's console |
[4] |
Because after installing GuestOS from network, it is minimum settings, so it's useful to save
it as a template in order to create new virtual machines later.
Please refer next topic to create a new virtual machine from template below.
|
root@dlp:~# # Host's console root@dlp:~# virt-clone --original www --name template --file /var/kvm/images/template.img
Cloning www.img
Clone 'template' created successfully.| 20 GB 01:39
root@dlp:~# ll /var/kvm/images/template.img -rwxr-xr-x 1 root root 21474836480 May 7 20:58 /var/kvm/images/template.img* root@dlp:~# ll /etc/libvirt/qemu/template.xml -rw------- 1 root root 1519 May 7 20:32 /etc/libvirt/qemu/template.xml |
[5] |
Set basic initial config to GuestOS first before using it.
|
[6] | Define a new Storage Pool.
|
root@dlp:~# mkdir /etc/libvirt/storage/
root@dlp:~#
vi /etc/libvirt/storage/disk01.xml # create new
<pool type='dir'>
# any name <name>disk01</name> <capacity>0</capacity> <allocation>0</allocation> <available>0</available> <source> </source> <target> # specify pool directory <path>/var/kvm/images</path> <permissions> <mode>0700</mode> <owner>-1</owner> <group>-1</group> </permissions> </target> </pool>
root@dlp:~#
virsh pool-define /etc/libvirt/storage/disk01.xml Pool disk01 defined from /etc/libvirt/storage/disk01.xml
root@dlp:~#
virsh pool-start disk01 Pool disk01 started
root@dlp:~#
root@dlp:~# virsh pool-autostart disk01 Pool disk01 marked as autostarted virsh pool-list Name State Autostart ----------------------------------------- disk01 active yesroot@dlp:~# virsh pool-info disk01 Name: disk01 UUID: 294bd446-1544-7434-35e6-9c9b1b8ae902 State: running Persistent: yes Autostart: yes Capacity: 906.32 GB Allocation: 16.42 GB Available: 889.91 GB |